<?php
/**
* 名称：xheditor演示类。
* 描述：演示从视图到程式端xheditor完整的使用过程
*/
final class Controller_Xheditor extends Controller{
    /**
    * 描述：默认执行程式。
    * @access protected
    * @return void
    */
    protected function Main(){
        self::$Template->Display('xheditor.html');
    }

    /**
    * 描述：响应xheditor图片上传的程式 。
    * @access protected
    * @return void
    */
    protected function Upload(){
        #处理参数之系统标识。
        $systemIdentification=array('system','system1','system2');
        if(isset($_GET['system'])){
            $system=$_GET['system'];
            if(!in_array($system,$systemIdentification)){
                exit(json_encode(array(
                    'err'=>'文件上传失败，发生预设性逻辑错误，错误代码：app-1。', //提供的系统标识错误。
                    'msg'=>''
                )));
            }
        }
        else{
            exit(json_encode(array(
                'err'=>'文件上传失败，发生预设性逻辑错误，错误代码：app-2。', //请提供系统标识。
                'msg'=>''
            )));
        }
        #处理参数之上传类型。
        if(isset($_GET['uploadType'])){
            $uploadType=$_GET['uploadType'];
            $uploadTypeIdentification=array(
                Xheditor_Upload::UPLOAD_TYPE_DOCUMENT,Xheditor_Upload::UPLOAD_TYPE_IMAGE,
                Xheditor_Upload::UPLOAD_TYPE_FLASH,Xheditor_Upload::UPLOAD_TYPE_VADIO
            );
            if(!in_array($uploadType,$uploadTypeIdentification)){
                exit(json_encode(array(
                    'err'=>'文件上传失败，发生预设性逻辑错误，错误代码：app-3。。', //提供的上传类型标识错误。
                    'msg'=>''
                )));
            }
        }
        else{
            exit(json_encode(array(
                'err'=>'文件上传失败，发生预设性逻辑错误，错误代码：app-4。。', //请提供文件上传类型标识。
                'msg'=>''
            )));
        }
        #处理参数之路径路径。
        $pathData=array(
            $systemIdentification[0]=>'/apps/x_www1/attachment/xheditor/system',
            $systemIdentification[1]=>'/apps/x_www1/attachment/xheditor/system1',
            $systemIdentification[2]=>'/apps/x_www1/attachment/xheditor/system2'
        );
        $path=$pathData[$system];

        include(BUILD_ROOT.'/tryPHP/library/apps/xheditor.php');
        #上传文件（一般情况）。
        $xru=new XheditorUploader();
        $xru->FileControlName='filedata';
        $xru->Type=get('uploadType');
        $xru->URIPath='/data/001/xheditor';
        $xru->UpoadPath=BUILD_ROOT.$xru->URIPath;
        $xru->Upload();
        echo json_encode($xru->Error());

        #上传文件（多系统）。
        $xru=new XheditorUploader();
        $xru->FileControlName='filedata';
        $xru->Type=$uploadType;
        $xru->URIPath=$path;
        $xru->UpoadPath=BUILD_ROOT.$path;
        $xru->Upload();
        echo json_encode($xru->Error());
    }
}

